import { FormItemRule } from "naive-ui";
import { useUserStore } from '@/store/modules/user'
import { storeToRefs } from "pinia";
const userStore = useUserStore()
const { info } = storeToRefs(userStore)
/**
 * 增加表单配置
 */
export const addFormConfig: Record<string, any> = {
  cols: 24,
  xGap:24,
  labelPlacement: 'left',
  labelWidth: 80,
  formItems: [
    {
      field: "user_id",
      labelName: "用户id",
      labelStyle: "fontSize:14px;",
      type: "Select",
      placeholder: "-请选择用户-",
      selectWidth: "180px",
      span:12
      // options: types.value.map((item) => {
      //   return {
      //     label: item.TYPE,
      //     value: item.id,
      //   };
      // }),
    },
    {
      field: "type_id",
      labelName: "类型",
      labelStyle: "fontSize:14px;",
      type: "Select",
      placeholder: "-请选择一个类别-",
      selectWidth: "180px",
      span: 12
      // options: types.value.map((item) => {
      //   return {
      //     label: item.TYPE,
      //     value: item.id,
      //   };
      // }),
    },
    {
      field: "title",
      labelName: "标题",
      labelStyle: "fontSize:14px;",
      type: "Input",
      inputType: "text",
      inputWidth: "180px",
      placeholder: '请输入标题',
      span: 12
    },
    {
      field: "location",
      labelName: "地点",
      labelStyle: "fontSize:14px;",
      type: "Input",
      inputType: "text",
      inputWidth: "180px",
      placeholder: '请输入地点',
      span: 12
    },
    {
      field: "tag",
      labelName: "标签",
      labelStyle: "fontSize:14px;",
      type: "RadioBox",
      name: "radioBox",
      options: [
        {
          label: "寻物启事",
          value: "寻物启事",
        },
        {
          label: "认领启事",
          value: "认领启事",
        },
      ],
      span: 12
    },

    {
      field: "content",
      labelName: "内容",
      labelStyle: "fontSize:14px;",
      type: "TextArea",
      inputType: "textarea",
      placeholder: '请输入内容',
      autosize: {
        minRows: 3,
        maxRows: 5,
      },
      span: 24
    },


  ],
  rules: {
    user_id: {
      required: true,
      trigger: ["input"],
      message: "请选择用户",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未选择用户");
        }
        return true;
      },
    },
    type_id: {
      required: true,
      trigger: ["input"],
      message: "请选择类型",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未选择类型");
        }
        return true;
      },
    },
    title: {
      required: true,
      trigger: ["input"],
      message: "请输入标题",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未输入标题");
        }
        return true;
      },
    },
    location: {
      required: true,
      trigger: ["input"],
      message: "请输入地点",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未输入地点");
        }
        return true;
      },
    },
    tag: {
      required: true,
      trigger: ["input"],
      message: "请选择标签",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未选择标签");
        }
        return true;
      },
    },
    content: {
      required: true,
      trigger: ["input"],
      message: "请输入内容",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未输入内容");
        }
        return true;
      },
    },

  },
};


/**
 * 修改表单配置
 */
export const updateFormConfig: Record<string, any> = {
  cols: 24,
  xGap:24,
  labelPlacement: 'left',
  labelWidth: 80,
  formItems: [
    {
      field: "user_id",
      labelName: "用户id",
      labelStyle: "fontSize:14px;",
      type: "Select",
      placeholder: "-请选择用户-",
      selectWidth: "180px",
      span:12
      // options: types.value.map((item) => {
      //   return {
      //     label: item.TYPE,
      //     value: item.id,
      //   };
      // }),
    },
    {
      field: "title",
      labelName: "标题",
      labelStyle: "fontSize:14px;",
      type: "Input",
      inputType: "text",
      inputWidth: "180px",
      placeholder: '请输入标题',
      span: 12
    },
    {
      field: "location",
      labelName: "地点",
      labelStyle: "fontSize:14px;",
      type: "Input",
      inputType: "text",
      inputWidth: "180px",
      placeholder: '请输入地点',
      span: 12
    },
    {
      field: "look_count",
      labelName: "查看人数",
      labelStyle: "fontSize:14px;",
      type: "Input",
      inputType: "text",
      inputWidth: "180px",
      placeholder: '请输入人数',
      span: 12
    },
    {
      field: "status_id",
      labelName: "发布状态",
      labelStyle: "fontSize:14px;",
      type: "Select",
      placeholder: "-请选择状态-",
      selectWidth: "180px",
      options: [
        {
          label: '正在寻找',
          value: 1
        },
        {
          label: '等待认领',
          value:2
        },
        {
          label: '已经找到',
          value: 3
        },
        {
          label: '已被认领',
          value: 4
        }
      ],
      span: 12
    },
    {
      field: "TIME",
      labelName: "发布日期",
      labelStyle: "fontSize:14px;",
      type: "Date",
      span: 12
    },
    {
      field: "public_time",
      labelName: "发布时间",
      labelStyle: "fontSize:14px;",
      type: "Time",
      span: 12
    },
    {
      field: "tag",
      labelName: "标签",
      labelStyle: "fontSize:14px;",
      type: "RadioBox",
      name: "radioBox",
      span: 12,
      options: [
        {
          label: "寻物启事",
          value: "寻物启事",
        },
        {
          label: "认领启事",
          value: "认领启事",
        },
      ],
    },
    {
      field: "is_delete",
      labelName: "是否删除",
      labelStyle: "fontSize:14px;",
      type: "RadioBox",
      name: "radioBox",
      options: [
        {
          label: "是",
          value: "是",
        },
        {
          label: "否",
          value: "否",
        },
      ],
      span: 12
    },
    {
      field: "audit_status",
      labelName: "审核状态",
      labelStyle: "fontSize:14px;",
      type: "RadioBox",
      name: "radioBox",
      options: [
        {
          label: "已审核",
          value: "已审核",
        },
        {
          label: "未审核",
          value: "未审核",
        },
      ],
      span: 12
    },
    {
      field: "content",
      labelName: "内容",
      labelStyle: "fontSize:14px;",
      type: "TextArea",
      inputType: "textarea",
      placeholder: '请输入内容',
      autosize: {
        minRows: 3,
        maxRows: 5,
      },
      span: 24
    },
   
  ],
  rules: {
    user_id: {
      required: true,
      trigger: ["input"],
      message: "请选择用户",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未选择用户");
        }
        return true;
      },
    },
    title: {
      required: true,
      trigger: ["input"],
      message: "请输入标题",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未输入标题");
        }
        return true;
      },
    },
    is_delete: {
      required: true,
      trigger: ["input"],
      message: "请选择是否删除",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未选择删除状态");
        }
        return true;
      },
    },
    location: {
      required: true,
      trigger: ["input"],
      message: "请输入地点",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未输入地点");
        }
        return true;
      },
    },
    look_count: {
      required: true,
      trigger: ["input"],
      message: "请输入人数",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0 || Number(value) < 0) {
          return new Error("人数错误");
        }
        return true;
      },
    },
    tag: {
      required: true,
      trigger: ["input"],
      message: "请选择标签",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未选择标签");
        }
        return true;
      },
    },
    audit_status: {
      require: true,
      trigger: ["input"],
      message: "请选择状态",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未选择状态");
        }
        return true;
      },
    },
    status_id: {
      required: true,
      trigger: ["input"],
      message: "请选择发布状态",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未选择发布状态");
        }
        return true;
      },
    },
   
    content: {
      required: true,
      trigger: ["input"],
      message: "请输入内容",
      validator(rule: FormItemRule, value: string) {
        if (value.length === 0) {
          return new Error("未输入内容");
        }
        return true;
      },
    },
    TIME: {
      required: true,
      trigger: ["input"],
      message: "请选择发布日期",
      validator(rule: FormItemRule, value: string) {
        if (value.toString().length === 0) {
          return new Error("未选择发日期");
        }
        return true;
      },
    },
    public_time: {
      required: true,
      trigger: ["input"],
      message: "请选择发布时间",
      validator(rule: FormItemRule, value: string) {
        if (value.toString().length === 0) {
          return new Error("未选择发布时间");
        }
        return true;
      },
    }
  },
};

